package com.lancoo.answer.model.bean

data class PaperAnalysisInfor(
//    var isOneOnOne: Boolean = false, //是否来自校外辅导，默认来自中高考
    val AverageScore: String,
    val Duration: Int,
    val FullScore: String,
    val HighestScore: String,
    val ObjectiveFullScore: Double,
    val ObjectiveScore: Double,
    val PaperScoreRate: String,
    val PaperID: String,
    val PaperName: String,
    val SetName: String,
    val Score: String,
    val State: Int,
    val SubjectiveFullScore: Double,
    val SubjectiveScore: Double,
    val TotalAudio: TotalAudio,
    val TypeList: List<TypeAnalysis>
)

data class TotalAudio(
    val Path: String = "",
    val TimeLength: Int
)

data class TypeAnalysis(
    val EvalScore: String,
    val GenreID: Int,
    val GenreName: String,
    val LevelType: Int,
    val QuesAnswerList: List<QuesAnswerAnalysis>,
    val QuesDetailList: List<QuesDetailAnalysis>,
    val QuesList: List<QuesAnalysis>,
    val TotalScore: String,
    val TypeIndex: Int,
    val TypeName: String,
    val TypeNo: String
)

data class QuesAnswerAnalysis(
    val ChildAnswerList: List<ChildAnswerAnalysis>,
    val Comment: String = "",
    val Duration: Int,
    val Index: Int,
    val IsScanAnswer: Boolean,
    val QuesID: String,
    val ScoreRate: String,
    val ScoreRateIndex: String,
    val State: Int
)

data class QuesDetailAnalysis(
    var SameState: Int,
    val AudioList: List<String>,
    val ChildList: List<ChildAnalysis>,
    val AudioSpeed: Double,
    val DVAL: String,
    val EXVAL: String,
    val EvalType: Int,
    val GenreID: Int,
    val GenreName: String,
    val GenreType: String,
    val HVAL: String,
    val ImportKlgList: List<ImportKlgAnalysis>,
    val IsIndentQuesbody: Boolean,
    val IsOral: Boolean,
    val MainKlgList: List<MainKlgAnalysis>,
    val ModelAnswerAreaList: MutableList<AnswerArea>,
    val ModelAnswerInfoList: List<AnswerInfo>,
    val ModelTextInfoList: List<TextInfo>,
    val QuesAudio: QuesAudioAnalysis,
    val QuesBody: String,
    val QuesBrief: String,
    val QuesChildNum: Int,
    val QuesGuidance: String,//导语
    val QuesID: String,
    val QuesLeaderContent: String,
    val ReplaceItemCount: Int,
    val SortNum: Int,
    val SpecialFeatureCodes: String,
    val Theme: String,
    val ThemeKlgList: List<ThemeKlgAnalysis>,
    val TotalItemCount: Int,
    val TypeName: String,
    val TypeNo: String,
    val Resource: String
)

data class QuesAnalysis(
    //add by long
//    var IsGetInfor: Boolean?,//是否获取到笔记及收藏状态
//    var IsFavourite: Boolean? = false,//是否收藏
//    var NoteID: String?,//笔记id

    val Index: Int,
    val QuesID: String,
    val SortIndexList: MutableList<SortIndexAnalysis>
)

data class ChildAnswerAnalysis(
    val AudioPath: String,
    val ChildIndex: Int,
    val EvalScore: String,
    val ImagePath: String,
    val ItemAnswer: String,
    val ItemList: MutableList<ItemAnalysis>,
    val ScoreRate: Double,
    val SortIndexType: Int,
    val State: Int,
    val StuAnswer: String,
    val TotalScore: Double,
    val WrittingAnswerType: Int
)

data class ItemAnalysis(
    val AudioPath: String,
    val EvalScore: String,
    val ImagePath: String,
    val ItemAnswer: String,
    val ItemAskList: List<StuAnswerA>,
    val ItemIndex: Int,
    val ScoreRate: Double,
    val State: Int,
    val StuAnswer: String,
    val TotalScore: Double,
    val WrittingAnswerType: Int
)

data class ChildAnalysis(
    val ChildAnalysis: String,
    val ChildAnswer: String,
    val ChildAnswerType: Int,
    val ChildAsk: String,
    val ChildDisplay: String,
    var ChildSectionName: String = "",
    val IsIndentChildAnswer: Boolean,
    val IsIndentChildAsk: Boolean,
    val ChildAudio: ChildAudioAnalysis,
    val ChildOptionList: List<ChildOptionAnalysis>,
    val ItemList: MutableList<ItemXAnalysis>,
    val SortIndexType: Int
)

data class ImportKlgAnalysis(
    val Code: String,
    val Name: String,
    val UniqueCode: String
)

data class MainKlgAnalysis(
    val Code: String,
    val Name: String,
    val UniqueCode: String
)

data class QuesAudioAnalysis(
    val Article: String,
    val Path: String,
    val TimeLength: Int
)

data class ThemeKlgAnalysis(
    val Code: String,
    val Name: String,
    val UniqueCode: String
)

data class ChildAudioAnalysis(
    val Path: String,
    val TimeLength: Int
)

data class ChildOptionAnalysis(
    val IsRight: Boolean,
    val Option: String,
    val OptionIndex: String,
    val Rate: String,
    val ShowType: Int,
    val StuCount: String
)

data class ItemXAnalysis(
    val AnswerWordsNumber: Int,
    val IsRemark: Boolean,
    val ItemAnalysis: String,
    val ItemAnswer: String,
    val ItemAskList: List<Any>,
    val ItemOptionList: List<ItemOptionAnalysis>,
    val ItemSortIndex: String,
    val SortIndex: String
)

data class ItemOptionAnalysis(
    val IsRight: Boolean,
    val Option: String,
    val OptionIndex: String,
    val Rate: String,
    val ShowType: Int,
    val StuCount: String
)

data class SortIndexAnalysis(
    val Score: Double,
    val ScoreRate: Double,
    val SortIndex: String,
    val State: Int
)

data class StuAnswerA(
    val StuAnswer: String
)